Skip to content

docs(claude): document adapter TS/RS exemption + proactive-conversion rule#79

Merged
hyperpolymath merged 1 commit into
mainfrom
claude/axiom-jl-registry-infra-kr7t4a
Jul 9, 2026
Merged

docs(claude): document adapter TS/RS exemption + proactive-conversion rule#79
hyperpolymath merged 1 commit into
mainfrom
claude/axiom-jl-registry-infra-kr7t4a

Conversation

@hyperpolymath

Copy link
Copy Markdown
Owner

Summary

boj-server-cartridges had no .claude/CLAUDE.md. This adds one (mirroring boj-server's format) that records two things:

  1. The adapter exemption — the 34 MCP/LSP adapter .ts (cartridges/**/adapter/**) and 3 VSCode-host panel .res (cartridges/**/panels/**) are the estate's carved-out class (protocol glue against TS-native SDKs), the same carve-out boj-server already documents for its 6 adapters. tools/*.ts (6) are explicitly not exempt — they're portable-now Deno CLI.
  2. The general proactive-conversion rule — convert .ts/.res → AffineScript at the earliest opportunity, guarded by portable-now only (MCP/LSP/VSCode glue stays until the AffineScript bindings ship, per the js-to-affinescript doctrine) and compile-verify + wire-first (no unbuilt .affine; don't delete a working .ts for one that hasn't compiled).

Changes

  • New .claude/CLAUDE.md: machine-readable pointer, language-policy summary, the general rule, the adapter/panel exemption table, and the docs-format note.

Notes

  • The canonical source of truth for the exemption remains the path_allow_prefixes field on hypatia's cicd_rules/typescript_detected + cicd_rules/rescript_detectedhyperpolymath/hypatia is outside this session's repo scope, so applying that rule change is owner-side work. This file is the human-readable mirror + rationale record, per estate convention.
  • Documentation-only; no code or workflow changes.

🤖 Generated with Claude Code

https://claude.ai/code/session_01UPFC9YQ7g9gc3VnRox42Q1


Generated by Claude Code

… rule

boj-server-cartridges had no .claude/CLAUDE.md. Adds one mirroring
boj-server's format, recording:

- The MCP/LSP adapter (34 .ts) + VSCode-host panel (3 .res) exemption as
  the estate's carved-out class (protocol glue vs TS-native SDKs), with
  the tools/*.ts (6) explicitly left in the convert-now bucket. Mirrors
  the hypatia path_allow_prefixes source of truth (owner to apply there).
- The general estate rule: proactively convert .ts/.res -> AffineScript
  at the earliest opportunity, guarded by (1) portable-now only (MCP/LSP/
  VSCode glue stays until bindings ship, per the js-to-affinescript
  doctrine) and (2) compile-verify + wire-first (no unbuilt .affine, no
  removing a working .ts for one that hasn't compiled).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01UPFC9YQ7g9gc3VnRox42Q1
@github-actions

github-actions Bot commented Jul 9, 2026

Copy link
Copy Markdown

🔍 Hypatia Security Scan

Findings: 282 issues detected

Severity Count
🔴 Critical 44
🟠 High 131
🟡 Medium 107

⚠️ Action Required: Critical security issues found!

View findings
[
  {
    "reason": "TypeScript file detected -- banned language",
    "type": "banned_language_file",
    "file": "/home/runner/work/boj-server-cartridges/boj-server-cartridges/cartridges/cross-cutting/orchestration/stack-orchestrator-mcp/adapter/planner.ts",
    "action": "flag",
    "rule_module": "cicd_rules",
    "severity": "critical"
  },
  {
    "reason": "TypeScript file detected -- banned language",
    "type": "banned_language_file",
    "file": "/home/runner/work/boj-server-cartridges/boj-server-cartridges/cartridges/cross-cutting/orchestration/stack-orchestrator-mcp/adapter/types.ts",
    "action": "flag",
    "rule_module": "cicd_rules",
    "severity": "critical"
  },
  {
    "reason": "TypeScript file detected -- banned language",
    "type": "banned_language_file",
    "file": "/home/runner/work/boj-server-cartridges/boj-server-cartridges/cartridges/cross-cutting/orchestration/stack-orchestrator-mcp/adapter/rollback.ts",
    "action": "flag",
    "rule_module": "cicd_rules",
    "severity": "critical"
  },
  {
    "reason": "TypeScript file detected -- banned language",
    "type": "banned_language_file",
    "file": "/home/runner/work/boj-server-cartridges/boj-server-cartridges/cartridges/cross-cutting/orchestration/stack-orchestrator-mcp/adapter/rollback_test.ts",
    "action": "flag",
    "rule_module": "cicd_rules",
    "severity": "critical"
  },
  {
    "reason": "TypeScript file detected -- banned language",
    "type": "banned_language_file",
    "file": "/home/runner/work/boj-server-cartridges/boj-server-cartridges/cartridges/cross-cutting/orchestration/stack-orchestrator-mcp/adapter/planner_test.ts",
    "action": "flag",
    "rule_module": "cicd_rules",
    "severity": "critical"
  },
  {
    "reason": "TypeScript file detected -- banned language",
    "type": "banned_language_file",
    "file": "/home/runner/work/boj-server-cartridges/boj-server-cartridges/cartridges/cross-cutting/orchestration/stack-orchestrator-mcp/adapter/lsp_client.ts",
    "action": "flag",
    "rule_module": "cicd_rules",
    "severity": "critical"
  },
  {
    "reason": "TypeScript file detected -- banned language",
    "type": "banned_language_file",
    "file": "/home/runner/work/boj-server-cartridges/boj-server-cartridges/cartridges/cross-cutting/orchestration/stack-orchestrator-mcp/adapter/lsp_client_test.ts",
    "action": "flag",
    "rule_module": "cicd_rules",
    "severity": "critical"
  },
  {
    "reason": "TypeScript file detected -- banned language",
    "type": "banned_language_file",
    "file": "/home/runner/work/boj-server-cartridges/boj-server-cartridges/cartridges/cross-cutting/orchestration/stack-orchestrator-mcp/adapter/parser.ts",
    "action": "flag",
    "rule_module": "cicd_rules",
    "severity": "critical"
  },
  {
    "reason": "TypeScript file detected -- banned language",
    "type": "banned_language_file",
    "file": "/home/runner/work/boj-server-cartridges/boj-server-cartridges/cartridges/cross-cutting/orchestration/stack-orchestrator-mcp/adapter/integration_test.ts",
    "action": "flag",
    "rule_module": "cicd_rules",
    "severity": "critical"
  },
  {
    "reason": "TypeScript file detected -- banned language",
    "type": "banned_language_file",
    "file": "/home/runner/work/boj-server-cartridges/boj-server-cartridges/cartridges/cross-cutting/orchestration/stack-orchestrator-mcp/adapter/parser_test.ts",
    "action": "flag",
    "rule_module": "cicd_rules",
    "severity": "critical"
  }
]

Powered by Hypatia Neurosymbolic CI/CD Intelligence

@hyperpolymath
hyperpolymath marked this pull request as ready for review July 9, 2026 23:32
@hyperpolymath
hyperpolymath merged commit c06d271 into main Jul 9, 2026
28 of 30 checks passed
@hyperpolymath
hyperpolymath deleted the claude/axiom-jl-registry-infra-kr7t4a branch July 9, 2026 23:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants